iT邦幫忙

2022 iThome 鐵人賽

DAY 29
0
Software Development

離開C#新手村的最後試煉系列 第 29

# 試煉29 - 自訂 class 番外篇 Object 一切的開始

  • 分享至 

  • xImage
  •  

開始試煉

連續講了許多自訂 class 想到其實 Object 也很值得提一下
先來看code

class Employee
{

}
static void Main(string[] args)
{
    var a = new Employee();
}


請問 為何啥都沒有的Employee 就有四個方法可以呼叫呢
其實就是Object提供的

可以看到VS2022 你打上 System.Object 會變暗
就表示其實你可以不需要打

在C# 的世界中 所有物件都是繼承System.Object
然後來看看 Object提供的四個方法有何用途吧

Equals (可以override)

之前有提到過 就是定義相等

GetType

就是取得 該物件的Type class 也是反射的起手式

ToString (可以override)

將物件變成文字

所以預設會是 Type 名稱

GetHashCode (可以override)

就是算出該物件的唯一數字
可以用int 測試看看 你int的數值多少 GetHashCode 就會是多少

知道這四個方法的來源後
再回去看自訂方法class 的應用 會有清楚一點吧

結束試煉

明天就是最後一個試煉了 30天快要結束了


上一篇
# 試煉28 - 自訂 class 技巧4 轉換
下一篇
# 試煉30 - HashSet 有用過嗎
系列文
離開C#新手村的最後試煉30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言